package com.xxxx.seckill.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 订单表
 * </p>
 *
 * @author Jack
 * @since 2024-04-06
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("t_order")
public class Order implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 订单ID
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 用户ID
     */
    private Long userId;

    /**
     * 商品ID
     */
    private Long goodsId;

    /**
     * 收货地址ID
     */
    private Long deliveryAddressId;

    /**
     * 商品名称（用作冗余）
     */
    private String goodsName;

    /**
     * 商品数量
     */
    private Integer goodsCount;

    /**
     * 单价
     */
    private BigDecimal goodsPrice;

    /**
     * 下单渠道：1（PC） 2（Android） 3（IOS）
     */
    private Integer orderChannel;

    /**
     * 订单状态：0（新建未支付） 1（已支付） 2（已发货） 3（已收货） 4（已退款） 5（已完成）
     */
    private Integer status;

    /**
     * 订单的创建时间
     */
    private Date createTime;

    /**
     * 订单的支付时间
     */
    private Date payTime;


}
